#!/bin/sh
. "${srcdir=.}/init.sh"; path_prepend_ . ../src

# Test PHP support: --add-comments option, strings with embedded expressions.

cat <<\EOF > xg-ph-1.php
<?
// This comment will not be extracted.
echo _("help");
//  TRANSLATORS: This is an extracted comment.
echo _("me");
# TRANSLATORS: This is extracted too.
echo _("and you");
/* Not extracted either. */
echo _("Hey Jude");
/*  TRANSLATORS:
     Nickname of the Beatles
*/
echo _("The Fabulous Four");
// This will not be extracted.
echo _(table["key"]);
// Strings with embedded expressions, a.k.a. variable parsing.
echo _("embedded_1_$foo bar");
echo _("embedded_2_${foo}bar");
echo _("embedded_3_{$foo}bar");
echo _("embedded_4_{$array[func(_('embedded_4_sub1'))]}_bar_{$array[func(_('embedded_4_sub2'))]}_baz");
echo _("embedded_5");
// Heredoc with with embedded expressions.
echo _(<<<EOT
embedded_6_$foo bar
EOT);
echo _(<<<EOT
embedded_7_${foo}bar
EOT);
echo _(<<<EOT
embedded_8_{$foo}bar
EOT);
echo _(<<<EOT
embedded_9_{$array[func(_('embedded_9_sub1'))]}_bar_{$array[func(_('embedded_9_sub2'))]}_baz
EOT);
echo _(<<<EOT
embedded_10
EOT);
?>
EOF

: ${XGETTEXT=xgettext}
${XGETTEXT} --omit-header --no-location --add-comments=TRANSLATORS: \
  -d xg-ph-1.tmp xg-ph-1.php || Exit 1
LC_ALL=C tr -d '\r' < xg-ph-1.tmp.po > xg-ph-1.po || Exit 1

cat <<\EOF > xg-ph-1.ok
msgid "help"
msgstr ""

#. TRANSLATORS: This is an extracted comment.
msgid "me"
msgstr ""

#. TRANSLATORS: This is extracted too.
msgid "and you"
msgstr ""

msgid "Hey Jude"
msgstr ""

#. TRANSLATORS:
#. Nickname of the Beatles
#.
msgid "The Fabulous Four"
msgstr ""

msgid "embedded_4_sub1"
msgstr ""

msgid "embedded_4_sub2"
msgstr ""

msgid "embedded_5"
msgstr ""

msgid "embedded_9_sub1"
msgstr ""

msgid "embedded_9_sub2"
msgstr ""

msgid "embedded_10"
msgstr ""
EOF

: ${DIFF=diff}
${DIFF} xg-ph-1.ok xg-ph-1.po
result=$?

exit $result
